package com.ynet.middleground.contract.bean;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

import com.ynet.core.common.BaseReqObj;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * @author daigaole
 * @description 变更合约状态服务
 * @date 2020-04-04
 */
@Data
@ApiModel(value = "更新合约状态请求类", description = "更新合约状态请求类")
public class ModifyContractStatusReq extends BaseReqObj {

    private static final long serialVersionUID = 7749329370276026796L;

    @ApiModelProperty(value = "业态公司 id \n（仅综合管理平台使用）", notes = "业态公司 id \n（仅综合管理平台使用）", dataType = "Integer")
    private Integer formatId;

    /**
     * 合约 id
     */
    @ApiModelProperty(value = "合约id", notes = "合约id", required = true, dataType = "Integer")
    @NotNull(message = "合约 id不能为空")
    private Integer contractId;

    /**
     * 审批流程编号
     */
    @ApiModelProperty(value = "如果更新状态为签署中必填审批流程编号", notes = "合约名称/模版名称", dataType = "String")
    private String appProcessNo;

    /**
     * 合约状态：0-未签署（新建保存状态下）、1-签署中、2-已签署、3-已结束
     */
    @ApiModelProperty(value = "合约状态：0-未签署（新建保存状态下），1-签署中、2-已签署", notes = "合约状态：0-未签署（新建保存状态下），1-签署中、2-已签署",
        required = true, dataType = "String")
    @NotBlank(message = "合约状态不能为空")
    private String status;

    /**
     * 签署时间 yyyy-MM-dd HH:mm:ss
     */
    @ApiModelProperty(value = "签署时间 yyyy-MM-dd HH:mm:ss，合约状态为2-已签署必填", notes = "签署时间", dataType = "String")
    private String tsignatoryDate;

}
